#ifndef NEWGAME_HH_
# define NEWGAME_HH_
# include "Network.hh"
# include "InitMessage.hh"

/**
 * \brief Új játék létrehozása.
 *
 * A kliens küldi a szervernek, a szerver egy done üzenettel válaszol. Az üzenet
 * szerkezete:
 * <init>
 *  <new_game>
 *      <name>új játék neve</name>
 *      <min_players>játékosok minimális száma</min_players>?
 *      <max_players>játékosok maximális száma</max_players>?
 *  </new_game>
 * </init>
 */
class Network::NewGame: public InitMessage {
    public: static u2 const UNLIMITED;

    public: static spNewGame construct(QDomElement const& message);

    protected: QString const name;

    protected: u2 const minPlayers;

    protected: u2 const maxPlayers;

    public:
    NewGame(QString const& name, u2 minPlayers = 2, u2 maxPlayers = UNLIMITED);

    public: virtual void process_on_server(Network::XmlServerThread& thread);

    public: virtual QDomDocument to_xml() const;
};

#endif // ndef NEWGAME_HH_
